Home media server control

ABSTRACT

A home media server includes a processor, a storage medium; and machine-readable code, stored on the non-transitory storage medium, the non-transitory storage medium includes instructions which when executed, cause the home media server to receive downloadable instructions, an edited set of data and analysis data. The downloadable instructions, when executed by the processor cause the home media server to search for and obtain media content associated with an edited video program. The instructions also cause the home media server to receive the edited set of data corresponding to editing steps for assembly of the edited video program, and to emulate assembly of the edited video program utilizing the media content obtained by the home media server to created an emulated video program.

RELATED APPLICATION

This application is a continuation application of application Ser. No. 10/071,571, filed Feb. 8, 2002.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention generally relates to home media servers. More particularly, the present invention relates to home media server content management and processing.

2. Discussion of the Related Art

Consumers are beginning to own home media servers or set-top boxes (such as TiVo) that have powerful media processing capabilities. These units are capable of downloading content over networks and digitally recording many hours of movies, television programs, music, game software, advertisements, etc. Consumers will soon own large libraries of television and other content for their personal enjoyment.

Already, the set-top box is becoming a popular adjunct to TV viewing. Acting as an intelligent personal video recorder, a set-top box can “pause” broadcast video, receive TV listings, and store and display directed advertising. The several technologies that enable the disclosed invention, including video editing software, are well known to those skilled in the art.

Media producers today produce content and then distribute it to the public. Television producers shoot video, record voiceovers, license historical clips, etc., and distribute the resulting edited content to the public via various media. Likewise, music is produced in a studio, using live musicians or licensed musical samples, and distributed on compact discs or digitally over the Internet. These are costly methods of media production.

Therefore, there is a need for an improved method of producing media products at low cost that enables consumers to re-use home content as raw materials.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a home media server content management and processing system according to an embodiment of the present invention;

FIG. 2 illustrates a flow chart diagram of a method for providing home media server content management and processing according to an embodiment of the present invention; and

FIG. 3 illustrates a flow chart for emulation by a home media server of steps taken by a producer to create an edited program according to an embodiment of the present invention.

DETAILED DESCRIPTION

The present invention allows instructions from media producers to control home media servers in a way that adds value to home content libraries. A home media server, such as a set-top box, stores, manages, and processes consumer content, such as movies and music. The present invention enables media producers to provide valuable media server content management and content processing software to the public. In one embodiment, messages to video editing software running on a home media server allow the intelligent playback of home content in new and appealing combinations.

New forms of entertainment can result from this method of selecting, synchronizing, editing, mixing, and displaying home content. With the present invention, home recordings become an open source of content on top of which media producers are able to create new layers of media products for the public. Generally, this method enables the processing and combining of home content and software within a home media server to allow new applications, games, and entertainment to be displayed. In particular, robust methods of home content recognition, selection, segmentation, and synchronization are disclosed.

FIG. 1 illustrates a home media server content management and processing system. A media producer using an editing platform 110 running editing software, creates and stores a database containing producer specified multi-media content. The producer generates a set of instructions and data to assemble an edited program using specified segments from the multi-media content database. The assembled edited program is viewed real-time and stored on the storage medium of the editing platform 110. The set of instructions, data, and multi-media content in the public domain or that the producer has secured rights to, are distributed via the Internet, or other connection, to home media servers 130.

A home media server 130 receives the set of instructions, data, and multi-media content from the editing platform 110 via the Internet 120 or other connection. The home media server 130 emulates the assembly of the edited program using the set of instructions, data, and multi-media content, displays the assembled edited program in real-time on a monitor 140, and stores the assembled edited program in the home media server 130.

FIG. 2 illustrates a flow chart diagram of a method for providing home media server content management and processing according to an embodiment of the present invention. A television producer selects 200 video and audio content, such as original works of art or movies and music that are available to the public, in the public domain, or that the producer has secured rights to, for instance, through downloaded files over the Internet.

The titles identifying 201 the set of content selections (such as movie and song titles), as well as the content that will be used in the assembly of the edited program are stored 202 as data files on the producer's storage medium within his/her editing platform. Sample systems may include a Pentium IV PC, Apple McIntosh or any equivalent computer-based editing platform running video-editing software, such as Avid, Adobe Premiere or other equivalent software.

The producer may also create original video, audio, and software, and integrate them into a new program as well. Such content is also stored as media files on the producer's storage medium within his editing platform. Content files may be stored in various media formats, such as Moving Pictures Experts Group 4, also known as MPEG4 (specification ISO/IEC JTC1/SC29/WG11 N4030, INTERNATIONAL ORGANISATION FOR STANDARDISATION ORGANISATION INTERNATIONALE DE NORMALISATION, published March 2001) and MP3, a subset of MPEG1 (specification ISO/IEC JTC1/SC29/WG11 NMPEG 96, INTERNATIONAL ORGANISATION FOR STANDARDISATION ORGANISATION INTERNATIONALE DE NORMALISATION, published June 1996).

The producer generates 210 a set of instructions and data for the assembly of an edited program. The producer uses the editing software program to specify 211 the endpoints of specific segments within those content files that will be used to assemble an edited video program. One sample set of segments may be specific scenes from several different movies starring a specific actor. Each segment is assigned 211 a segment ID number.

The producer then uses the editing software in several steps 212 to sequence these segments, and manipulate, i.e., effect the segments, and create video transitions, such as cuts and dissolves between segments. The producer may also mix and sequence several audio segments in a similar fashion. Methods for implementing such steps are known to those in the art.

A final edited video program, including audio, is then assembled 220 using these steps and stored for viewing 230 on the producer's computer. All these editing steps are stored 230 as a set of data, which is used by the producer's video-editing software to assemble the edited program. This same data is distributed 250 to home media servers over the Internet.

Analysis software running on the PC analyzes 240 the endpoint frames (e.g., the first and last 1/30^(th) sec.) of each segment that was used to create the edited program. The results of such analysis are stored as additional data to be distributed 250 to home media servers in like fashion. An example of such analysis may be the Fast Fourier Transform (FFT) of each endpoint frame, stored in the following format: Title/segmentID/startFFT/endFFT Video frames may be represented by two-dimensional FFTs, whereas audio frames may be represented by one-dimensional FFTs. Such transforms are well known to those in the art.

Alternatively, decimated versions of content endpoint frames may be used. The producer may distribute a small bit of untransformed content (e.g., 20 ms of audio or one frame of video) to allow the home server to correlate and find the end points.

Additionally, downloadable instructions 260 from the media producer to the home media server direct the media server to search, bid for, obtain rights to schedule and manage the recording of broadcast, on-demand, and other media content, such as movies, music, games, advertisements, etc. The media producer may also deliver downloadable instructions 260 to direct the home media server to search, bid for, etc., media processing software modules required to create the edited program.

In another embodiment of the present invention, downloadable instructions 260 allow advertisement selection, content choices, etc., to be based on viewer behavior and metrics. Viewing history, purchasing history, etc., may be securely stored in the home media server, but used to control content selection, surfing, and directed advertising.

Home media servers, having downloaded this data, may now use this data to emulate 270 the steps taken by the producer outlined above to assemble an edited program similar to that specified by the producer.

The editing steps of the producer are saved and used to create a set of instructions for the home media servers. These instructions instruct a home media server to “emulate,” 270, i.e. repeat the steps taken by the producer. Certain messages allow the home server to find the video and audio “raw” content specified. If the content is not found on the home server, or delivered via the Internet from the producer, it may downloaded from remote content servers. Other messages direct the home server to synchronize, edit, and combine the raw content selections in virtually the same way as the producer and to output the resulting data stream output for display.

Using this method, the home media server only emulates the content selection, ordering, and processing choices of the producer. No copyright restricted material is transferred from producer to consumer. In fact, the consumer is viewing content that he/she has a right to view. In this process, the new work of art is a set of content selecting, time-shifting, processing, and combining instructions used to control how home media servers playback the content.

FIG. 3 illustrates a flow chart for home media server emulation of steps taken by a producer to create an edited program. Title data is used to search 300 the home media server storage medium and the Internet, for example, for content titles specified by the producer. Instructions 310 from the media producer to the home media server direct the home media server to search, bid for, obtain rights to schedule, and manage the recording of broadcast, on-demand, and other media content, such as movies, music, games, advertisements, etc. If titles are found via the Internet, they are stored on the home media server storage medium 320.

After all titles are found, analysis software 330 running on the home media server performs the FFT of each frame of the specified content and compares it to the FFT data downloaded from the media producer. A correlation between the home media server analysis and downloaded media producer FFT data allows the home media server to identify the exact segment endpoints used to assemble the program.

Alternatively, decimated versions of content endpoint frames may be used to perform the correlation. The small bits of untransformed content (e.g., 20 ms of audio or one frame of video) distributed by the media producer may allow the home server to perform a correlation to find the end points.

Video editing software running on the home media server uses the editing step data to assemble 340 a similar edited program as specified by the producer. The assembled program may be stored for later playback, or played back during the assembly process in real-time.

In summary, the present invention allows instructions from media producers to control home media servers in a way that adds value to home content libraries. A home media server, such as a set-top box, manages and processes consumer content, such as movies and music. The home media server only emulates the content selection, ordering, and processing choices of the media producer. For example, a producer may create a documentary on New York in the 1940's using images stored from home documentaries on jazz and World War II combined with home stored music. The producer may also download to the consumer original voiceover content. The consumer is viewing content that he/she has a right to view. In this process, the new work of art is a set of content selecting, time-shifting, processing, and combining instructions used to control how home media servers playback the content. This method enables media producers to use home stored recordings as an open source of content on top of which they can create new layers of media products for the public

While the description above refers to particular embodiments of the present invention, it will be understood that many modifications may be made without departing from the spirit thereof. The accompanying claims are intended to cover such modifications as would fall within the true scope and spirit of the present invention. The presently disclosed embodiments are therefore to be considered in all respects as illustrative and not restrictive, the scope of the invention being indicated by the appended claims, rather than the foregoing description, and all changes that come within the meaning and range of equivalency of the claims are therefore intended to be embraced therein. 

What is claimed is:
 1. A home media server, comprising: a processor, a storage medium; and machine-readable code, stored on the storage medium, the non-transitory storage medium including instructions which when executed cause the home media server to: receive downloadable instructions, an edited set of data and analysis data, the analysis data including end point related data, the downloadable instructions which when executed by the processor cause the home media server to search for and obtain media content associated with an edited video program, the received edited set of data corresponding to editing steps for assembly of the edited video program, and emulating assembly of the edited video program utilizing the media content obtained by the home media server to create an emulated video program, wherein analysis software in the home media server generates endpoint related data from the obtained media content and compares the generated endpoint related data to the received endpoint related data to identify exact segment endpoints in the assembled edited video program.
 2. The home media server of claim 1, wherein the home media server utilizes title data to search the home media server for multi-media files specified by the downloadable instructions.
 3. The home media server of claim 1, wherein the home media server utilizes title data to search the Internet for multi-media files specified by the downloadable instructions.
 4. The home media server of claim 1, further including storing the emulated video program in the storage medium of the home media server.
 5. The home media server of claim 1, further including playing the emulated video program as it is being assembled by the home media server.
 6. The home media server of claim 1, the downloadable instructions further causing the processor of the home media server to select advertisements to be included in the emulated video program based on viewer data.
 7. The home media server of claim 6, the downloadable instructions further causing the processor of the home media server to retrieve purchasing history of a user to select the advertisements to be included in the emulated video program.
 8. The home media server of claim 6, the downloadable instructions further causing the processor of the home media server to retrieve viewing history of a user in order to select the advertisements to be included in the emulated video program.
 9. The home media server of claim 1, the downloadable instructions further causing the processor of the home media server to select the media content based on viewer data.
 10. The home media server of claim 1, the downloadable instructions further causing the processor of the home media server to select the media content based on retrieved user viewing history.
 11. The home media server of claim 1, further including selecting, by the processor of the home media server, the media content based on viewer data.
 12. The home media server of claim 1, further including selecting, by the processor of the home media server, the media content based on retrieved user viewing history.
 13. A computer-implemented method of providing home media server processing comprising: receiving, at the home media server, a set of instructions, editing data and analysis data, the analysis data including endpoint related data; executing, using a processor of the home media server, the set of instructions, the set of instructions, which when executed result in the home media server, search for and obtain, by the processor of the home media server, media content associated with an original edited video program, the received editing data corresponding to editing steps for assembly of the original edited video program, and emulating, utilizing the processor of the home media server, assembly of the original edited video program utilizing the media content obtained by the home media server to create an emulated video program, wherein analysis software in the home media server generates endpoint related data from the obtained media content and compares the generated endpoint related data to the received endpoint related data to identify exact segment endpoints in the assembled edited video program.
 14. The computer-implemented method of claim 13, further including searching, by the processor of the home media server, a database of the home media server utilizing title data specified by the set of instructions.
 15. The computer-implemented method of claim 13, further including searching, by the processor of the home media server, the Internet utilizing title data included in the set of instructions.
 16. The computer-implemented method of claim 13, further including storing, by the processor of the home media server, the emulated video program in a storage medium of the home media server.
 17. The computer-implemented method of claim 13, further including the selecting, by the processor of the home media server, advertisements to be included in the emulated video program based on viewer data.
 18. The computer-implemented method of claim 17, further including the processor of the home media server retrieving purchasing history of a viewer for selecting the advertisements to be included in the emulated video program.
 19. The computer-implemented method of claim 17, further including retrieving, by the processor of the home media server, viewing history of a viewer in order to select advertisements to be included in the emulated video program.
 20. The computer-implemented method of claim 13, further including retrieving, by the processor of the home media server, viewing history of a viewer in order to select advertisements to be included in the emulated video program. 